Diagnostic methods and systems

ABSTRACT

Methods and systems are provided for monitoring a fuel injector of an internal combustion engine. In one embodiment, a method includes: receiving a set of feature data, the feature data sensed from a fuel injector during a fuel injection event; processing, by a processor, the set of feature data with a decision tree model to generate a prediction of a fault status; and selectively generating, by the processor, a notification signal based on the prediction.

INTRODUCTION

The technical field generally relates to internal combustion engines,and more particularly relates to methods and systems for diagnosing fuelinjectors of an internal combustion system.

Internal combustion engines include fuel injectors that inject fuel intoan intake air stream to produce an air/fuel mixture. When a fuelinjector fails, it does not deliver a desired amount of fuel or anyamount of fuel into the air. Without the proper amount of fuel, theair/fuel mixture may not combust, thereby causing disruption in engineoperation.

Accordingly, it is desirable to provide methods and systems formonitoring fuel injectors. Furthermore, other desirable features andcharacteristics of the present invention will become apparent from thesubsequent detailed description and the appended claims, taken inconjunction with the accompanying drawings and the foregoing technicalfield and background.

SUMMARY

Methods and systems are provided for monitoring a fuel injector of aninternal combustion engine. In one embodiment, a method includes:receiving a set of feature data, the feature data sensed from a fuelinjector during a fuel injection event; processing, by a processor, theset of feature data with a decision tree model to generate a predictionof a fault status; and selectively generating, by the processor, anotification signal based on the prediction.

In various embodiments, the method includes: receiving training dataassociated with the fuel injector; and defining, by the processor, thedecision tree model based on the training data.

In various embodiments, the method includes: computing gain data for afeature of the feature data based on the training data; and determininga rule to be associated with a node of the decision tree model based onthe gain data.

In various embodiments, the determining the rule is based on a maximumgain value of the gain data. In various embodiments, the gain data isbased on a computed entropy. In various embodiments, the computedentropy is based on a decrease in entropy after the training data issplit for the feature.

In various embodiments, the training data includes data setscorresponding to a plurality of features associated with the fuelinjector. In various embodiments, the plurality of features includes afirst closing time, a first opening magnitude, a first opening magnitudelocation, a second opening magnitude, a second opening magnitude delta,a location inside a window where the second opening magnitude wasdetected, and a raw voltage at an early point in the window.

In various embodiments, the set of feature data comprises a firstclosing time, a first opening magnitude, a first opening magnitudelocation, a second opening magnitude, a second opening magnitude delta,a location inside a window where the second opening magnitude wasdetected, and a raw voltage at an early point in the window.

In another embodiment, a system includes: at least one sensor thatgenerates sensor data based on observable conditions of the fuelinjector; and a controller configured to, by a processor, receive thesensor data, process the sensor data with a decision tree model togenerate a prediction of a fault status, and selectively generate anotification signal based on the prediction.

In various embodiments, the controller is further configured to: receivetraining data associated with the fuel injector; and define the decisiontree model based on the training data.

In various embodiments, the controller is further configured to: computegain data for a feature of the feature data based on the training data;and determine a rule to be associated with a node of the decision treemodel based on the gain data.

In various embodiments, the controller determines the rule based on amaximum gain value of the gain data. In various embodiments, the gaindata is based on a computed entropy.

In various embodiments, the computed entropy is based on a decrease inentropy after the training data is split for the feature.

In various embodiments, the training data includes data setscorresponding to a plurality of features associated with the fuelinjector.

In various embodiments, the plurality of features includes a firstclosing time, a first opening magnitude, a first opening magnitudelocation, a second opening magnitude, a second opening magnitude delta,a location inside a window where the second opening magnitude wasdetected, and a raw voltage at an early point in the window.

In various embodiments, the set of feature data comprises a firstclosing time, a first opening magnitude, a first opening magnitudelocation, a second opening magnitude, a second opening magnitude delta,a location inside a window where the second opening magnitude wasdetected, and a raw voltage at an early point in the window.

In various embodiments, the method includes: evaluating the trainingdata based on a histogram and a cumulative density function; and storinga parameter table of the decision tree model based on the evaluating.

In various embodiments, the controller is further configured to evaluatethe training data based on a histogram and a cumulative densityfunction, and store a parameter table of the decision tree model basedon the evaluating.

BRIEF DESCRIPTION OF THE DRAWINGS

The exemplary embodiments will hereinafter be described in conjunctionwith the following drawing figures, wherein like numerals denote likeelements, and wherein:

FIG. 1 is a functional block diagram illustrating a vehicle having afuel injector monitoring system in accordance with various embodiments;

FIG. 2 is a dataflow diagram illustrating a fuel injector monitoringsystem in accordance with various embodiments;

FIG. 3 is a functional block diagram illustrating a decision tree of thefuel injector monitoring system in accordance with various embodiments;and

FIGS. 4 and 5 are flowcharts illustrating methods performed by the fuelinjector monitoring system in accordance with various embodiments.

DETAILED DESCRIPTION

The following detailed description is merely exemplary in nature and isnot intended to limit the application and uses. Furthermore, there is nointention to be bound by any expressed or implied theory presented inthe preceding technical field, background, brief summary or thefollowing detailed description. As used herein, the term module refersto any hardware, software, firmware, electronic control component,processing logic, and/or processor device, individually or in anycombination, including without limitation: application specificintegrated circuit (ASIC), an electronic circuit, a processor (shared,dedicated, or group) and memory that executes one or more software orfirmware programs, a combinational logic circuit, and/or other suitablecomponents that provide the described functionality.

Embodiments of the present disclosure may be described herein in termsof functional and/or logical block components and various processingsteps. It should be appreciated that such block components may berealized by any number of hardware, software, and/or firmware componentsconfigured to perform the specified functions. For example, anembodiment of the present disclosure may employ various integratedcircuit components, e.g., memory elements, digital signal processingelements, logic elements, look-up tables, or the like, which may carryout a variety of functions under the control of one or moremicroprocessors or other control devices. In addition, those skilled inthe art will appreciate that embodiments of the present disclosure maybe practiced in conjunction with any number of systems, and that thesystems described herein is merely exemplary embodiments of the presentdisclosure.

For the sake of brevity, conventional techniques related to signalprocessing, data transmission, signaling, control, and other functionalaspects of the systems (and the individual operating components of thesystems) may not be described in detail herein. Furthermore, theconnecting lines shown in the various figures contained herein areintended to represent example functional relationships and/or physicalcouplings between the various elements. It should be noted that manyalternative or additional functional relationships or physicalconnections may be present in an embodiment of the present disclosure.

With reference to FIG. 1, a fuel injector monitoring system showngenerally at 100 is associated with a vehicle 10 in accordance withvarious embodiments. In general, the fuel injector monitoring system 100monitors fuel injectors of an internal combustion engine for faults. Aswill be discussed in more detail below, the fuel injector monitoringsystem 100 monitors the fuel injectors based on decision tree methods.

As depicted in FIG. 1, the vehicle 10 generally includes a chassis 12, abody 14, front wheels 16, and rear wheels 18. The body 14 is arranged onthe chassis 12 and substantially encloses components of the vehicle 10.The body 14 and the chassis 12 may jointly form a frame. The wheels16-18 are each rotationally coupled to the chassis 12 near a respectivecorner of the body 14.

In various embodiments, the vehicle 10 is an autonomous, asemi-autonomous, or non-autonomous vehicle. The vehicle 10 is depictedin the illustrated embodiment as a passenger car, but it should beappreciated that any other vehicle including motorcycles, trucks, sportutility vehicles (SUVs), recreational vehicles (RVs), marine vessels,aircraft, etc., can also be used.

As shown, the vehicle 10 generally includes a propulsion system 20, atransmission system 22, a steering system 24, a brake system 26, asensor system 28, an actuator system 30, at least one data storagedevice 32, at least one controller 34, and a communication system 36.The propulsion system 20 may, in various embodiments, include aninternal combustion engine 38.

The engine 38 combusts an air/fuel mixture to produce drive torque forthe vehicle 10. For example, air is drawn into the engine 38 through anintake system 40. The intake system 40 includes an intake manifold and athrottle valve. Air from the intake manifold is drawn into cylinders 42of the engine 38. While the engine 38 may include multiple cylinders 42,for illustration purposes two representative cylinders 42 are shown. Forexample, the engine 38 may include 2, 3, 4, 5, 6, 8, 10, and/or 12cylinders.

In various embodiments, the engine 38 may operate using a four-strokecycle including an intake stroke, a compression stroke, a combustionstroke, and an exhaust stroke. During the intake stroke, air from theintake manifold is drawn into the cylinders 42 through an intake valve.Fuel injectors 44 are controlled to inject fuel into the air to achievea target air/fuel ratio. Fuel may be injected into the intake manifoldat a central location or at multiple locations, such as near the intakevalve of each of the cylinders 42. In various implementations, fuel maybe injected directly into the cylinders 42 or into mixing chambersassociated with the cylinders.

The injected fuel mixes with air and creates an air/fuel mixture in eachcylinder 42. During the compression stroke, a piston (not shown) withinthe cylinder 42 compresses the air/fuel mixture. In various embodiments,the engine 38 may be a compression-ignition engine, in which casecompression in the cylinder 42 ignites the air/fuel mixture.Alternatively, the engine 38 may be a spark-ignition engine, in whichcase a spark plug is energized to generate a spark in the cylinder 42,which ignites the air/fuel mixture. The timing of the spark may bespecified relative to the time when the piston is at its topmostposition, referred to as top dead center (TDC).

During the combustion stroke, combustion of the air/fuel mixture drivesthe piston down, thereby driving a crankshaft. The combustion stroke maybe defined as the time between the piston reaching TDC and the time atwhich the piston returns to bottom dead center (BDC). During the exhauststroke, the piston begins moving up from BDC and expels the byproductsof combustion through an exhaust valve. The byproducts of combustion areexhausted from the vehicle via an exhaust system 46.

The transmission system 22 is configured to transmit the power from thepropulsion system 20 to the vehicle wheels 16-18 according to selectablespeed ratios. According to various embodiments, the transmission system22 may include a step-ratio automatic transmission, acontinuously-variable transmission, or other appropriate transmission.The brake system 26 is configured to provide braking torque to thevehicle wheels 16-18. The brake system 26 may, in various embodiments,include friction brakes, brake by wire, a regenerative braking systemsuch as an electric machine, and/or other appropriate braking systems.The steering system 24 influences a position of the of the vehiclewheels 16-18.

The sensor system 28 includes one or more sensing devices 48 a-48 n thatsense observable conditions of the vehicle 10. The sensing devices 48a-48 n can include, but are not limited to, fuel injector sensors thatsense observable conditions associated with the fuel injectors 44.

The controller 34 includes at least one processor 54 and a computerreadable storage device or media 56. The processor 54 can be any custommade or commercially available processor, a central processing unit(CPU), a graphics processing unit (GPU), an auxiliary processor amongseveral processors associated with the controller 34, a semiconductorbased microprocessor (in the form of a microchip or chip set), amacroprocessor, any combination thereof, or generally any device forexecuting instructions. The computer readable storage device or media 56may include volatile and nonvolatile storage in read-only memory (ROM),random-access memory (RAM), and keep-alive memory (KAM), for example.KAM is a persistent or non-volatile memory that may be used to storevarious operating variables while the processor 54 is powered down. Thecomputer-readable storage device or media 56 may be implemented usingany of a number of known memory devices such as PROMs (programmableread-only memory), EPROMs (electrically PROM), EEPROMs (electricallyerasable PROM), flash memory, or any other electric, magnetic, optical,or combination memory devices capable of storing data, some of whichrepresent executable instructions, used by the controller 34 incontrolling the vehicle 10.

The instructions may include one or more separate programs, each ofwhich comprises an ordered listing of executable instructions forimplementing logical functions. The instructions, when executed by theprocessor 54, receive and process signals from the sensor system 28,perform logic, calculations, methods and/or algorithms for controllingthe components of the vehicle 10 through the actuator system 30.Although only one controller 34 is shown in FIG. 1, embodiments of thevehicle 10 can include any number of controllers 34 that communicateover any suitable communication medium or a combination of communicationmediums and that cooperate to process the sensor signals, perform logic,calculations, methods, and/or algorithms, and generate control signalsto automatically control features of the vehicle 10.

In various embodiments, one or more instructions of the controller 34are embodied in the fuel injector monitoring system 100 and, whenexecuted by the processor 54, monitor sensed values associated with thefuel injectors 44 to determine faults of the fuel injectors 44. Forexample, when a fuel injector fails, the fuel injector is incapable ofdelivering the desired amount of fuel or any fuel at all. Sensed valuesfrom the sensor system 28 are monitored based on a decision tree modelto determine when a fault occurs. The controller 34 communicates thefaults to a notification system 60 of the vehicle 10. The notificationsystem 60 generates notification signals to notify a user of the vehicle10. As can be appreciated, the notification signal can activate a visualnotification system, an audio notification, and/or a haptic notificationsystem.

In various embodiments, the sensed values include voltage dataassociated with each fuel injector 44. The sensed values are processedinto feature data for each injection event. The feature data includes,but is not limited to, an opening period (OT), an opening magnitude(OM), an opening magnitude location (OML), a closing period (CT), and araw voltage (V). The opening period of the fuel injector 44 may refer tothe period between a first time when power is applied to the fuelinjector 44 to open the fuel injector 44 and a second time when the fuelinjector 44 actually becomes open and begins injecting fuel. The openingmagnitude of the fuel injector 44 may correspond to how much the fuelinjector 44 opens for a fuel injection event. The closing period of thefuel injector 44 may refer to the period between a first time when poweris removed from the fuel injector 44 to close the fuel injector 44 and asecond time when the fuel injector 44 actually becomes closed and stopsinjecting fuel.

The faults can be determined by evaluating the feature data with one ormore decision tree models. Different fuel injectors, however, may havedifferent closing periods, opening periods, opening magnitudes, andother characteristics. Thus, the machine learning models can be tunedfor each fuel injector type. In various embodiments, the tuning can beperformed by a remote system 58 (e.g., offline) and communicated to thecontroller 34 via the communication system 36 and/or can be performed bythe controller 34 (e.g., online).

Referring now to FIG. 2, and with continued reference to FIG. 1, adataflow diagram illustrates various embodiments of a decision treesystem 200 which may be embedded within the controller 34 and which mayinclude parts of the fuel injector monitoring system 100 in accordancewith various embodiments. Various embodiments of the decision treesystem 200 according to the present disclosure can include any number ofsub-modules embedded within the controller 34. As can be appreciated,the sub-modules shown in FIG. 2 can be combined and/or furtherpartitioned to similarly monitor the fuel injectors 44 for faults.Inputs to decision tree system 200 may be received from the sensorsystem 28, received from other controllers (not shown) associated withthe vehicle 10, received from the communication system 36, and/ordetermined/modeled by other sub-modules (not shown) within thecontroller 34. In various embodiments, the decision tree system 200includes a gain computation module 202, a tree definition module 204, amonitoring module 206, and a model datastore 210.

In various embodiments, the tree definition module 204 receives as inputtraining data 212 and defines a decision tree model 214 based thereon.The decision tree model 214 includes rules implemented in a tree-likestructure to predict pass or fail data. In various embodiments, as shownin FIG. 3, the tree-like structure includes, an initial node 300, two ormore sub-nodes 304-310, and two or more leaf or end nodes 312-324. Eachnode 300-324 has an associated rule. The initial node 300 and thesub-nodes 304-310 include comparison rules (e.g., OM1<=206.32 at 300,OM1L<=23 at 306, Evolt <=−7.8267 at 304, OM1<=121.55 at 308, OM1<=194.03at 310, Evolt<=−8.6367 at 312) and the leaf nodes 313-324 include passor fail rules (e.g., FAIL 313, PASS 314, FAIL 316, PASS 318, FAIL 320,PASS 322, FAIL 324).

With reference back to FIG. 2, in various embodiments, the treedefinition module 204 generates the decision tree model 214 based ontraining data 212 associated with the fuel injector 44 monitoring. Forexample, the training data 212 can include data for each feature of afeature set used to diagnose a missing pulse of the fuel injector 44.The features of the feature set can include, but are not limited to, afirst closing time (CT1), a first opening magnitude (OM1), a firstopening magnitude location (OM1L), a second opening magnitude (OM2), asecond opening magnitude delta (OM2Delta), a location inside windowwhere the second opening magnitude was detected (OM2Location), and a rawvoltage at an early point in the window (Evolt). The data can includepreviously sensed values for each feature.

The tree definition module 204 defines the decision tree model 214 bybreaking down each data set for each feature into smaller and smallersubsets by rules at each node. Each rule is a decision process tocompare a feature of the feature set to a threshold. The final result orend node is a pass or fail decision. As will be discussed in more detailbelow, the tree definition module 204 breaks down each feature based ongain data 216. The tree definition module 204 then stores the defineddecision tree model 214 in the model datastore 210 for processing futurefeature set data.

In various embodiments, the decision tree model includes a parametertable and an associated algorithm. The values stored in the parametertable are implemented by the algorithm thus, allowing the algorithm tobe tunable for each fuel injector 44. In various embodiments, thealgorithm can be implemented according to any decision tree method suchas, but not limited to, ID3, C4.0, C5.0, or other version that utilizesthe gain data 216.

In various embodiments, the parameter table stores a list of rules,outcomes, and confidence values associated with the rules. In variousembodiments, the confidence value for each rule is computed as the ratioof the number of training cases in the training data 212 that arecorrectly classified by the rule divided by the total training casescovered by the rule.

In various embodiments, the size of the parameter table can be definedbased on an evaluation of the training data 212 using a histogram and acumulative density function. For example, a number of rows can bedetermined by computing a histogram and a cumulative density functionfrom the number of rules of the observations in the training data 212.Similarly, a number of columns can be determined by computing thehistogram and cumulative density function from the number of conditionsneeded to evaluate a rule. Since each rule has an outcome class of 0 or1, the total number of cells in the column of the parameter table is setto maximum number of conditions multiplied by three plus two. Thus, thetotal number of cells in the parameter table is set equal to the totalnumber of rows by the total number of columns.

The gain determination module 202 computes the gain data 216 used by thetree definition module 204. In various embodiments, the gaindetermination module 216 computes the gain data based on a computedentropy after a data set is divided for a feature. The entropy is themeasure of impurity, disorder, or uncertainty in the set of examples.

Entropy=−Σ_(i=1) ^(n) P(x _(i))log(P(x _(i))).

Where P(x_(i)) is a fraction of points in a given class (e.g., pass orfail).

For example, given the feature OM1 discussed above and the examplethreshold 206.32, the entropy is computed as:

${\left. {{{\left. {{{Entropy} = {{{P\left( {{{OM}\; 1} \leq 206.32} \right)}\left\{ {{{- {P({pass})}}\mspace{14mu} {\log \left( {P({pass})} \right)}} - {{f({fail})}\mspace{14mu} {\log \left( {P({fail})} \right)}}} \right\}} + {{P\left( {{{OM}\; 1} < 206.32} \right)}\left\{ {{{- {P({pass})}}\mspace{14mu} {\log \left( {P({pass})} \right)}} - {{P({fail})}\mspace{14mu} {\log \left( {P({fail})} \right)}}} \right\}}}},{{P\left( {{OM}\; 1} \right)} \leq 206.32}} \right) = \frac{{{pts}\mspace{14mu} {where}\mspace{14mu} {OMA}} \leq 206.32}{{total}\mspace{14mu} {num}\mspace{14mu} {of}\mspace{14mu} {pts}}},{{P({pass})} = \frac{{pts}\mspace{14mu} {with}\mspace{14mu} {pass}\mspace{14mu} {label}}{{total}\mspace{14mu} {num}\mspace{14mu} {of}\mspace{14mu} {pts}}},{and}}{{P\left( {{OM}\; 1} \right)} > 206.32}} \right) = \frac{{{pts}\mspace{14mu} {where}\mspace{14mu} {OMA}} > 206.32}{{total}\mspace{14mu} {num}\mspace{14mu} {of}\mspace{14mu} {pts}}},{{P({fail})} = {\frac{{pts}\mspace{14mu} {with}\mspace{14mu} {fail}\mspace{14mu} {label}}{{total}\mspace{14mu} {num}\mspace{14mu} {of}\mspace{14mu} {pts}}.}}$

The gain data 216 is set to the computed entropy. The gain data 216 isthen provided to the tree definition module 204.

The monitoring module 204 receives as input sensed feature set data 220including data used to diagnose a missing pulse of the fuel injector 44.The feature set data 220 can include, but is not limited to, a firstclosing time (CT1), a first opening magnitude (OM1), a first openingmagnitude location (OM1L), a second opening magnitude (OM2), a secondopening magnitude delta (OM2Delta), a location inside window where thesecond opening magnitude was detected (OM2Location), and a raw voltageat an early point in the window (Evolt). As can be appreciated, thefeature set data 220 can include other data in various embodiments andis not limited to the present examples.

The monitoring module 206 retrieves model data 218 including a decisiontree model from the model datastore 210 and processes the feature setdata 220 with the decision tree model to predict a fault and providefault prediction data 222. The fault prediction data 222 may be used bythe notification system to notify a user of a fault.

Referring now to FIGS. 4 and 5, and with continued reference to FIGS.1-3, flowcharts illustrate methods 400, 500 that can be performed by thefuel injector monitoring system 100 of FIG. 1 in accordance with thepresent disclosure. As can be appreciated, in light of the disclosure,the order of operation within the method is not limited to thesequential execution as illustrated in FIGS. 4 and 5 but may beperformed in one or more varying orders as applicable and in accordancewith the present disclosure.

In various embodiments, the method 400 can be scheduled to run based onone or more predetermined events. For example, the method 400 may beginat 405. The training data 212 is received at 410. A feature is selectedfrom the feature set at 420. The gain data 216 is computed at 430, forexample, as discussed above. The gain data 216 and the associated datais evaluated at 440 to construct the branches. A node and two branchesare defined based on a maximum gain of the gain data 216.

For example, if the current selected feature is OM1 and thecorresponding data set includes OM1 values: 196.47, 180.73, 206.32,201.17, 222.08, the tree definition module 204 considers the followingpossibilities:

OM1 <=196.47 & OM1>196.47,

OM1 <=180.73 & OM1 >180.73,

OM1 <=206.32 & OM1 >206.32,

OM1 <=201.17 & OM1 >201.17, and

OM1 <=222.08 & OM1 >222.08.

The computed gain data is associated with each possibility thepossibility with the maximum gain is selected as the threshold value forsplitting the branches.

Thereafter, a next feature is selected at 420 and the steps 430 and 440are repeated until the features of the feature set have been processedat 450. Thereafter, the nodes are defined based on the feature/thresholdpair that has the maximum information at 460. The decision tree model isthen stored at 470 and the method may end at 480.

In various embodiments, the method 500 can be scheduled to run based onone or more predetermined events, and/or can run continuously duringoperation of the vehicle 10. For example, the method 500 may begin at505. The feature set data 220 is received at 510. The feature set data220 is processed with the model retrieved from the model datastore 210at 520 to obtain a prediction. Thereafter, the notifications are sentbased on the prediction at 530 and the method 500 may end at 540.

While at least one exemplary embodiment has been presented in theforegoing detailed description, it should be appreciated that a vastnumber of variations exist. It should also be appreciated that theexemplary embodiment or exemplary embodiments are only examples, and arenot intended to limit the scope, applicability, or configuration of thedisclosure in any way. Rather, the foregoing detailed description willprovide those skilled in the art with a convenient road map forimplementing the exemplary embodiment or exemplary embodiments. Itshould be understood that various changes can be made in the functionand arrangement of elements without departing from the scope of thedisclosure as set forth in the appended claims and the legal equivalentsthereof.

What is claimed is:
 1. A method of monitoring a fuel injector of aninternal combustion engine, comprising: receiving a set of feature data,the feature data sensed from a fuel injector during a fuel injectionevent; processing, by a processor, the set of feature data with adecision tree model to generate a prediction of a fault status; andselectively generating, by the processor, a notification signal based onthe prediction.
 2. The method of claim 1, further comprising: receivingtraining data associated with the fuel injector; and defining, by theprocessor, the decision tree model based on the training data.
 3. Themethod of claim 2, further comprising: computing gain data for a featureof the feature data based on the training data; and determining a ruleto be associated with a node of the decision tree model based on thegain data.
 4. The method of claim 3, wherein the determining the rule isbased on a maximum gain value of the gain data.
 5. The method of claim3, wherein the gain data is based on a computed entropy.
 6. The methodof claim 5, wherein the computed entropy is based on a decrease inentropy after the training data is split for the feature.
 7. The methodof claim 2, wherein the training data includes data sets correspondingto a plurality of features associated with the fuel injector.
 8. Themethod of claim 7, wherein the plurality of features includes a firstclosing time, a first opening magnitude, a first opening magnitudelocation, a second opening magnitude, a second opening magnitude delta,a location inside a window where the second opening magnitude wasdetected, and a raw voltage at an early point in the window.
 9. Themethod of claim 1, wherein the set of feature data comprises a firstclosing time, a first opening magnitude, a first opening magnitudelocation, a second opening magnitude, a second opening magnitude delta,a location inside a window where the second opening magnitude wasdetected, and a raw voltage at an early point in the window.
 10. Asystem for monitoring a fuel injector of an internal combustion engine,comprising: at least one sensor that generates sensor data based onobservable conditions of the fuel injector; and a controller configuredto, by a processor, receive the sensor data, process the sensor datawith a decision tree model to generate a prediction of a fault status,and selectively generate a notification signal based on the prediction.11. The method of claim 10, wherein the controller is further configuredto: receive training data associated with the fuel injector; and definethe decision tree model based on the training data.
 12. The system ofclaim 11, wherein the controller is further configured to: compute gaindata for a feature of the feature data based on the training data; anddetermine a rule to be associated with a node of the decision tree modelbased on the gain data.
 13. The system of claim 12, wherein thecontroller determines the rule based on a maximum gain value of the gaindata.
 14. The system of claim 12, wherein the gain data is based on acomputed entropy.
 15. The system of claim 14, wherein the computedentropy is based on a decrease in entropy after the training data issplit for the feature.
 16. The system of claim 12, wherein the trainingdata includes data sets corresponding to a plurality of featuresassociated with the fuel injector.
 17. The system of claim 17, whereinthe plurality of features includes a first closing time, a first openingmagnitude, a first opening magnitude location, a second openingmagnitude, a second opening magnitude delta, a location inside a windowwhere the second opening magnitude was detected, and a raw voltage at anearly point in the window.
 18. The system of claim 10, wherein the setof feature data comprises a first closing time, a first openingmagnitude, a first opening magnitude location, a second openingmagnitude, a second opening magnitude delta, a location inside a windowwhere the second opening magnitude was detected, and a raw voltage at anearly point in the window.
 19. The method of claim 2, furthercomprising: evaluating the training data based on a histogram and acumulative density function; and storing a parameter table of thedecision tree model based on the evaluating.
 20. The system of claim 11,wherein the controller is further configured to evaluate the trainingdata based on a histogram and a cumulative density function and store aparameter table of the decision tree model based on the evaluating.